if (g_cancellable_set_error_if_cancelled (cancellable, error))
return FALSE;
- if (finfo != NULL && !is_archived_content)
+ if (finfo != NULL)
{
mode = g_file_info_get_attribute_uint32 (finfo, "unix::mode");
+ /* Archived content files should always be 0644 */
+ if (is_archived_content)
+ mode = (mode & S_IFMT) | 0644;
}
else
{
cancellable, error))
goto out;
- if (ret_checksum)
+ if (out_checksum)
{
+ g_assert (ret_checksum);
ostree_checksum_update_stat (ret_checksum,
g_file_info_get_attribute_uint32 (file_info, "unix::uid"),
g_file_info_get_attribute_uint32 (file_info, "unix::gid"),